﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SPEasyCode
{
    public class Constants
    {
        /// <summary>
        /// Instruction Identifier 
        /// </summary>
        public  const string InstructionIdentifier = ">>";
        /// <summary>
        /// List Identifier 
        /// </summary>
        public const string ListKeyIdentifier = "<%lists%>";
        /// <summary>
        /// List Identifier 
        /// </summary>
        public const string LoopEndIdentifier = ">>}";

        /// <summary>
        /// List Codition 
        /// </summary>
        public const string IfCoditionIdentifier = ">>if";
        /// <summary>
        /// Else Identifier 
        /// </summary>
        public const string ElseCoditionIdentifier = ">>else";

        /// <summary>
        /// loop start Identifier 
        /// </summary>
        public const string LoopStartIdentifier = ">>{";
        /// <summary>
        /// Field Identifier 
        /// </summary>
        public const string FieldIdentifier = "<%fields%>";
        /// <summary>
        /// Foreach loop Identifier 
        /// </summary>
        public const string ForEachIdentifier = "Foreach";
        /// <summary>
        /// DataType Identifier 
        /// </summary>
        public const string DataTypeIdentifier = "<%DataType%>";
        /// <summary>
        /// SPDataType Identifier 
        /// </summary>
        public const string SPDataTypeIdentifier = "<%SPDataType%>";
        /// <summary>
        /// Required field Identifier 
        /// </summary>
        public const string RequiredFieldIdentifier = "<%RequiredField%>";
        /// <summary>
        /// ListGuid field Identifier 
        /// </summary>
        public const string ListGuidFieldIdentifier = "<%ListGuid%>";
        /// <summary>
        /// FieldLookupListGuid field Identifier 
        /// </summary>
        public const string FieldLookupListGuid = "<%FieldLookupListGuid%>";
        /// <summary>
        /// FieldLookupListTite field Identifier 
        /// </summary>
        public const string FieldLookupListTitle = "<%FieldLookupListTitle%>";
        /// <summary>
        /// FieldChoiseValues field Identifier 
        /// </summary>
        public const string FieldChoiceValues = "<%FieldChoiceValues%>";
        /// <summary>
        /// Convert DataType Identifier 
        /// </summary>
        public const string DataTypeConvertionIdentifier = "<%ConvertTo%>";
        /// <summary>
        /// Convert DataType Identifier 
        /// </summary>
        public const string NumberFieldFormatIdentifier = "<%NumberFormat%>";
        /// <summary>
        /// Lower case
        /// </summary>
        public const string LowerCase = "<%L%>";
        /// <summary>
        /// FieldName Identifier 
        /// </summary>
        public const string FieldNameIdentifier = "<%FieldName%>";
        /// <summary>
        /// FieldName Identifier 
        /// </summary>
        public const string InternalFieldNameIdentifier = "<%InternalFieldName%>";
        /// <summary>
        /// DisplayName Identifier 
        /// </summary>
        public const string DisplayNameIdentifier = "<%FieldTitle%>";
        /// <summary>
        /// FieldName Identifier 
        /// </summary>
        public const string FieldNameToLowerIdentifier = "<%fieldName%>";
        /// <summary>
        /// FieldName Identifier 
        /// </summary>
        public const string ListNameIdentifier = "<%ListName%>";
        /// <summary>
        /// FieldName Identifier 
        /// </summary>
        public const string ListTitleIdentifier = "<%ListTitle%>";

        /// <summary>
        /// FieldName Identifier 
        /// </summary>
        public const string ListNameToLowerIdentifier = "<%listName%>";

        /// <summary>
        /// Save Identifier 
        /// </summary>
        public const string SaveIdentifier = "<<Save";
        /// <summary>
        /// Save End Identifier 
        /// </summary>
        public const string SaveEndIdentifier = "<<}";
        /// <summary>
        /// Save End Identifier 
        /// </summary>
        public const string SaveStartIdentifier = "<<{";
    }

    /// <summary>
    /// C# data types
    /// </summary>
    public class CDataTypes
    {
        public const string CString  = "string";
        public const string Cint= "int";
        public const string CDubble = "double";
        public const string CDatetime = "DateTime";
        public const string CBoolean = "bool";
        public const string CUrl= "string";
    }

    /// <summary>
    /// Data convertion types
    /// </summary>
    public class CDataTypesConvertion
    {
        public const string ToString = "ToString";
        public const string ToInt32 = "ToInt32";
        public const string ToDateTime = "ToDateTime";
        public const string ToDouble = "ToDouble";
        public const string ToBoolean = "ToBoolean";

    }
}
